home *** CD-ROM | disk | FTP | other *** search
/ PC Play 128 / pc play 128.iso / Demo / xmr / xmr.exe / {app} / Shaders / vs / vs1_2_normal_phong.vsh < prev    next >
Encoding:
Text File  |  2007-02-23  |  3.0 KB  |  105 lines

  1. vs_1_1
  2. // DX9 Vertex shader generated by NVIDIA Cg compiler
  3. // cgc version 1.3.0001, build date Jan  7 2005 14:01:35
  4. // command line args: -q -profile vs_1_1 -entry main -profileopts dcls
  5. // source file: vs1_2_normal_phong.cg
  6. // nv30vp backend compiling 'main' program
  7. def c18, 0, 1, 0.5, 0
  8. //vendor NVIDIA Corporation
  9. //version 1.0.02
  10. //profile vs_1_1
  11. //program main
  12. //semantic main.WorldViewProjMatrix
  13. //semantic main.ModelLightViewProjText
  14. //semantic main.ModelWorldMatrix
  15. //semantic main.WorldViewMatrix
  16. //semantic main.EyePos
  17. //semantic main.Light
  18. //semantic main.Fresnel
  19. //var float4x4 WorldViewProjMatrix :  : c[0], 4 : 1 : 1
  20. //var float4x4 ModelLightViewProjText :  : , 4 : 2 : 0
  21. //var float4x4 ModelWorldMatrix :  : c[4], 4 : 3 : 1
  22. //var float4x4 WorldViewMatrix :  : c[8], 4 : 4 : 1
  23. //var float4 EyePos :  : c[12] : 5 : 1
  24. //var float4 Light.Position :  : c[13] : 6 : 1
  25. //var float4 Light.Attenuation :  : c[14] : 6 : 1
  26. //var float Light.Range :  : c[15] : 6 : 1
  27. //var float Light.Power :  : c[16] : 6 : 1
  28. //var float4 Fresnel :  : c[17] : 7 : 1
  29. //var float4 I.Position : $vin.POSITION : ATTR0 : 0 : 1
  30. //var float4 I.Normal : $vin.NORMAL : ATTR3 : 0 : 1
  31. //var float4 I.TexCoord0 : $vin.TEXCOORD0 : ATTR7 : 0 : 1
  32. //var float4 main.HPOS : $vout.POSITION : HPOS : -1 : 1
  33. //var float4 main.Color : $vout.COLOR0 : COL0 : -1 : 1
  34. //var float4 main.LightAtten : $vout.COLOR1 : COL1 : -1 : 1
  35. //var float4 main.TexCoord0 : $vout.TEXCOORD0 : TEX0 : -1 : 1
  36. //var float4 main.FresnelRefl : $vout.TEXCOORD1 : TEX1 : -1 : 1
  37. //const c[18] = 0 1 0.5 0
  38. dcl_texcoord0 v7
  39. dcl_normal v3
  40. dcl_position v0
  41.     mov oT0, v7
  42.     dp4 oPos.x, c0, v0
  43.     dp4 oPos.y, c1, v0
  44.     dp4 oPos.z, c2, v0
  45.     dp4 oPos.w, c3, v0
  46.     dp4 r2.x, c4, v0
  47.     dp4 r2.y, c5, v0
  48.     dp4 r2.z, c6, v0
  49.     dp4 r2.w, c7, v0
  50.     add r1.xyz, c13.xyz, -r2.xyz
  51.     dp3 r0.x, r1.xyz, r1.xyz
  52.     rsq r0.w, r0.x
  53.     rcp r0.y, r0.w
  54.     slt r0.z, r0.y, c15.x
  55.     mad r0.x, c14.z, r0.y, c14.y
  56.     mad r0.x, r0.y, r0.x, c14.x
  57.     rcp r0.x, r0.x
  58.     min r0.y, r0.x, c18.y
  59.     add r0.x, c18.y, -r0.z
  60.     mul r0.x, r0.x, c18.x
  61.     mad r0.x, r0.z, r0.y, r0.x
  62.     mad r0.x, c18.z, r0.x, c18.z
  63.     mov oD1, r0.x
  64.     dp3 r3.x, c4.xyz, v3.xyz
  65.     dp3 r3.y, c5.xyz, v3.xyz
  66.     dp3 r3.z, c6.xyz, v3.xyz
  67.     dp3 r0.x, r3.xyz, r3.xyz
  68.     rsq r0.x, r0.x
  69.     mul r0.xyz, r0.x, r3.xyz
  70.     mul r4.xyz, r1.xyz, r0.w
  71.     dp3 r0.w, r0.xyz, r4.xyz
  72.     max r3.x, c18.x, r0.w
  73.     add r1.xyz, c12.xyz, -r2.xyz
  74.     dp3 r0.w, r1.xyz, r1.xyz
  75.     rsq r0.w, r0.w
  76.     mad r1.xyz, r0.w, r1.xyz, r4.xyz
  77.     dp3 r0.w, r1.xyz, r1.xyz
  78.     rsq r0.w, r0.w
  79.     mul r1.xyz, r0.w, r1.xyz
  80.     dp3 r0.w, r0.xyz, r1.xyz
  81.     max r3.y, c18.x, r0.w
  82.     mov r3.zw, c16.xyxx
  83.     lit oD0, r3
  84.     dp3 r1.x, c8.xyz, r0.xyz
  85.     dp3 r1.y, c9.xyz, r0.xyz
  86.     dp3 r1.z, c10.xyz, r0.xyz
  87.     dp3 r0.x, r1.xyz, r1.xyz
  88.     rsq r0.x, r0.x
  89.     mul r3.xyz, r0.x, r1.xyz
  90.     add r1, -c12, r2
  91.     dp4 r0.x, r1, r1
  92.     rsq r0.x, r0.x
  93.     mul r0.xyz, r0.x, r1
  94.     dp3 r0.x, r0.xyz, r3.xyz
  95.     add r0.xy, c18.y, r0.x
  96.     mov r0.zw, c17.x
  97.     lit r0.z, r0
  98.     add r0.x, c18.y, -r0.z
  99.     mad r0.x, c17.y, r0.x, r0.z
  100.     min r0.x, c18.y, r0.x
  101.     max r0.x, c18.x, r0.x
  102.     mov oT1, r0.x
  103. // 62 instructions
  104. // 5 temp registers
  105.